/**
 * 给你一个单链表的引用结点 head。链表中每个结点的值不是 0 就是 1。已知此链表是一个整数数字的二进制表示形式。
 * 请你返回该链表所表示数字的 十进制值。
 *      输入：head = [1,0,1]
 *      输出：5
 * 
 *      输入：head = [0]
 *      输出：0
 * 
 *      输入：head = [1]
 *      输出：1
 */



const Node = require('../../单链表/node.js')
var getDecimalValue = function(head) {
    let number = 0
    let p = head
    if(p.next === null) {
        return p.val === 0 ? 0 : 1
    }
    while(p !== null) {
        number *= 2
        number += p.data
        p = p.next
    }
    return number
};

let head = new Node(1)
head.next = new Node(0)
head.next.next = new Node(1)

console.log(getDecimalValue(head),'result');